package com.ys.erp.stage_mall_service.bean.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ys.erp.entity.data.bean.GoodsBrand;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author minamiyama
 * @date 2025/5/16 10:54
 */

@Data
@Accessors(chain = true)
@Schema(description = "金刚区配置返回对象")
public class KingKongConfigInfoVO {

    @Schema(description = "id")
    private Long id;

    @Schema(description = "排序")
    private Integer sort;

    @Schema(description = "标题")
    private String title;

    @Schema(description = "副标题")
    private String subTitle;

    @Schema(description = "图标")
    private String icon;

    @Schema(description = "背景图片")
    private String backgroundImage;

    @Schema(description = "类型")
    private String type;


    private List<GoodsBrandVO> goodsBrandList;

    @Schema(description = "商品分类")
    private List<GoodsMenu> goodsMenus;

    @Schema
    private List<GoodsTableVO> disAreas;

    @Data
    public static class GoodsTableVO {

        @Schema(description = "商品表名")
        private String name;

        @Schema(description = "商品信息")
        private List<GoodsInfoVO> goodsList;
    }

    @Data
    public static class GoodsInfoVO {

        @Schema(description = "商品id")
        private Long goodsId;

        @Schema(description = "商品品牌")
        private String brandName;

        @Schema(description = "商品图片")
        private String goodsImg;

        @Schema(description = "商品名称")
        private String goodsName;

        @Schema(description = "商品价格")
        private String goodsPrice;

        @Schema(description = "幺币抵扣率")
        private String ysCoinDiscount;

        @Schema(description = "商品发货方式")
        private String sendGoodsMethod;

        @Schema(description = "商品库存")
        private Integer stock;

        @Schema(description = "商品分类名称")
        private String cateName;


    }

    @Data
    @Schema(description = "商品品牌信息")
    public static class GoodsBrandVO {
        @Schema(description = "商品品牌id")
        private Long id;
        @Schema(description = "商品品牌名称")
        private String name;
    }

    @Data
    @Schema(description = "商品菜单")
    public static class GoodsMenu {

        @Schema(description = "菜单名称")
        private String menuName;

        @Schema(description = "是否置顶")
        private Integer isSticky;


        @Schema(description = "是否排序")
        private Integer isTop3Sort;

    }
}
